1. Field of the Invention
This invention relates to the field of signal processing, and in particular to a programmable bridge that facilitates the processing of digital signal streams among a variety of functional units and one or more digital signal processors.
2. Description of Related Art
FIG. 1A illustrates an example block diagram of a typical system 100 for receiving and processing a source input 101 for rendering via a user application 150. For example, the source input 101 may be a broadcast television signal, and the user application 150 may be the rendering of a television program on a display screen. The source input 101 may be an optical signal from a DVD or CD player, and the user application 150 may be a video or analog rendering device. The source input 101 may be a satellite or cellular telephone signal, and the user application 150 may be a wireless telephone.
An analog processor 110 filters and amplifies the analog source input 101, and a digital to analog converter 120 converts the filtered analog signal to a digital data stream. Optionally, if the source input 101 is a digital signal, the analog processor 110 and analog to digital converter 120 can be bypassed.
A channel decoder 130 receives the digital stream 129 from the converter 120, or from the source input 101 directly, and performs a variety of signal processing functions, generally related to frequency and sample rate conversion, adaptive filtering, error correction, anti-aliasing, and the like. Depending upon the application, the channel decoder 130 may be referred to by a variety of alternative names, such as: radio receiver, baseband modulator, digital receiver, tuner, demodulator, and so on. To illustrate the complexity of a typical channel decoder 130, an example decoding of a received digital stream 129 into an MPEG stream 139 is illustrated in FIG. 1B. The received stream 129 is demodulated and equalized to provide a QAM symbol stream 133, using techniques common in the art. The QAM symbol stream 133 is decoded to produce an MPEG stream as the output 139 of the channel decoder 130.
A source decoder 140 performs application specific functions on the decoded channel signal. For example, the decoded channel signal 139 may be an MPEG encoding of a video stream, and the source decoder 140 performs the functions, such as inverse DCT, motion vector compensation, and the like, that are related to the conversion of an MPEG signal into a video stream that can be rendered on a display device via the user application 150. If the input source 101 is a telephone signal, the source decoder 140 performs the functions, such as GSM decoding, to provide a signal that can be rendered to the telephone handset via the user application 150.
One of the difficulties in a traditional processing system such as illustrated in FIGS. 1A and 1B is the fact that standards are still evolving in most application fields. These standards typically evolve, or new standards emerge, to support enhanced or additional capabilities. A product that supports these additional capabilities will likely command a higher selling price, or a larger market share, than a ‘prior-generation’ device that was designed before these capabilities were available. The example channel decoder 130 in FIG. 1B, for example, corresponds to an “ITU A” compatible channel decoder. This decoder 130 includes a sync detector 132 that provides an input to the timing recover device 135 for synchronizing the incoming stream 129. The de-interleaver 133 provides a de-interlaced signal to the Reed-Solomon decoder 134. The Reed-Solomon decoder 134 also provides a synchronizing signal to the timing recovery device 135 for synchronizing the packet and frame rates. The de-randomizer 136 organizes the received and decoded stream into a coherent input for the formatter 137, which outputs an MPEG-formatted stream 139. An “ITU B” compatible channel decoder, however, performs the de-randomizer 136 function immediately after the sync detector 132, and before the de-interleaver 133. Additionally, in “ITU B”, an MPEG-specific timing recovery device (not illustrated in FIG. 1B) is typically used to control the formatter 137, and the MPEG-specific timings are also provided to the timing recovery device 135 of FIG. 1B. Thus, a change from an “ITU A” compatible device to an “ITU B” compatible device requires a somewhat substantial architectural change.
Programmable digital signal processors provide the potential of allowing prior-generation devices to be reprogrammed to support the latest standard, and/or to provide additional or enhanced capabilities without requiring a structural design change. This potential, however, is limited to function that can be successfully embodied in a digital signal processor (DSP) in a cost effective manner. Some functions require processing speeds that cannot currently be provided by a general purpose DS; some functions are more efficiently performed in a special purpose, or application specific, device because of bandwidth limitations; and so on.
Structured design also provides the potential of minimizing the impact of a change of requirements for a product. Preferably, a design is structured to allow individual blocks, or modules, to be replaced to provide the required additional capabilities, without requiring a change to modules unrelated to the changed capability, and without a change to the architecture of the overall system. The prior generation module is replaced by the latest generation module, and the overall system regains its competitive standing in the marketplace. This potential, however, is limited to well-contained changes of requirements. Despite efforts to anticipate future changes and to provide maximum design flexibility, new requirements often cause a restructuring of the system architecture. In some instances, functions that had been unrelated become related to provide a particular function; new input signals may be required within modules that had not previously used these signals; efficiencies become realizable with a new architecture that had not been feasible in the old architecture; and so on.